#ifndef DEF_MESH_FILTER
#define DEF_MESH_FILTER



#include "../IncludeComponents.h"


class MeshFilter : public Component
{
public:
	MeshFilter();
	virtual ~MeshFilter();

	void Apply();

	void SetVertex(float *vertex, unsigned int vertexCount) {_vertex = vertex; _vertexCount = vertexCount;}
	void SetNormals(float *normals) {_normals = normals;}
	void SetIndex(short *index, unsigned int indexCount) {_index = index; _indexCount= indexCount;}

	//Getter & Setter
	unsigned int GetVertexVBO() { return _vertexVBO; }
	unsigned int GetNormalsVBO() { return _normalsVBO; }
	unsigned int GetIndexVBO() { return _indexVBO; }
	unsigned int GetIndexCount() { return _indexCount; }
	

protected:
	float *_vertex;
	float *_normals;
	short *_index;

	unsigned int _vertexCount;
	unsigned int _indexCount;
	unsigned int _vertexVBO;
	unsigned int _normalsVBO;
	unsigned int _indexVBO;
};


#endif